
        /* ============================================================
           FUENTES Y ESTILOS BASE (Heredados de tu código principal)
        ============================================================ */
        @import url('https://fonts.googleapis.com/css2?family=Michroma&display=swap');
        @import url('https://fonts.googleapis.com/css2?family=Dancing+Script&display=swap');
        @import url('https://fonts.googleapis.com/css2?family=Allura&display=swap');

        html { scroll-behavior: smooth; }
        body { margin: 0; padding-top: 130px; overflow-x: hidden; background: white; font-family: 'Caudex', serif; }

        /* ============================================================
           MENÚ SUPERIOR 100% FIJO (Sincronizado y corregido)
        ============================================================ */
        .topbar { 
            position: fixed; 
            top: 0; 
            left: 0; 
            width: 100%; 
            height: 50px; 
            background: #ffcc9d; 
            display: flex; 
            justify-content: space-between; 
            align-items: center; 
            padding: 0 40px; 
            box-sizing: border-box; 
            font-family: "Michroma", sans-serif; 
            color: #666666; 
            font-size: 20px; 
            z-index: 10000; 
        }
        .main-header { 
            position: fixed; 
            top: 50px; /* Ajustado justo abajo de la topbar de 50px */
            left: 0; 
            width: 100%; 
            height: 80px; 
            background: #fffaf3; 
            display: flex; 
            justify-content: right; 
            align-items: center; 
            z-index: 9999; 
            box-shadow: 0 2px 10px rgba(0,0,0,.08); 
            padding: 0 40px;
            box-sizing: border-box;
        }
        .menu { display: flex; align-items: center; gap: 45px; }
        .menu-toggle { display: none; }
        .menu a { 
            color: #666666; 
            text-decoration: none; 
            font-size: 20px; 
            font-weight: bold; 
            font-family: "Arial Narrow", sans-serif; 
            transition: color 0.6s ease, transform 0.6s ease; 
        }
        .menu a:hover, .menu a.active { color: #b6582c; transform: translateY(-2px); }

        /* ============================================================
           SECCIÓN DEL RECETARIO (Inspiración Nescafe adaptada a Cuedani)
        ============================================================ */
        .recetario-section {
            padding: 80px 50px;
            background-color: #f4f1ea; /* Fondo consistente con tu paleta */
            min-height: 100vh;
        }
        
        .recetario-container {
            max-width: 1200px;
            margin: 0 auto;
        }

        .recetario-header {
            text-align: center;
            margin-bottom: 60px;
        }

        .recetario-header h1 {
            font-family: 'Michroma', sans-serif;
            font-size: 45px;
            color: #bc4f3b; /* Tu rojo corporativo */
            margin-bottom: 30px;
            font-weight: 400;
        }

        /* Botones de filtro superiores */
        .recipe-filters {
            display: flex;
            justify-content: center;
            gap: 15px;
            margin-bottom: 20px;
        }

        .filter-btn {
            background: #fffaf3;
            border: 2px solid #ed9133;
            padding: 12px 30px;
            border-radius: 40px;
            font-family: 'Arial Narrow', sans-serif;
            font-size: 18px;
            font-weight: bold;
            cursor: pointer;
            color: #666666;
            transition: all 0.4s ease;
        }

        .filter-btn.active, .filter-btn:hover {
            background: #b6582c;
            color: white;
            border-color: #b6582c;
            box-shadow: 0 10px 20px rgba(182, 88, 44, 0.2);
        }

        /* Grid de Tarjetas (2 columnas como tu referencia) */
        .recipes-grid {
            display: grid;
            grid-template-columns: repeat(2, 1fr);
            gap: 35px;
        }

        /* Tarjeta Estructura Vertical (imagen completa arriba, texto abajo) */
        .recipe-card {
            display: flex;
            flex-direction: column;
            background: white;
            border: 2px solid #cda986;
            border-radius: 18px;
            overflow: hidden;
            box-shadow: 0 4px 15px rgba(0,0,0,0.05);
            transition: transform 0.3s cubic-bezier(.2,.8,.2,1), box-shadow 0.3s ease;
            height: auto; /* La altura ahora depende del contenido, no es fija */
        }

        .recipe-card:hover {
            transform: translateY(-6px);
            box-shadow: 0 15px 30px rgba(0,0,0,0.12);
        }

        /* Imagen: ocupa todo el ancho arriba, sin recortar el plato */
        .recipe-img-box {
            width: 100%;
            aspect-ratio: 4 / 3; /* Relación de aspecto recomendada para las fotos */
            overflow: hidden;
            background: #f4f1ea; /* Relleno si la foto no llena el recuadro */
        }

        .recipe-img-box img {
            width: 100%;
            height: 100%;
            object-fit: contain; /* Nunca recorta: muestra el plato completo */
        }

        /* Textos: ahora ocupan todo el ancho debajo de la imagen */
        .recipe-info-box {
            width: 100%;
            padding: 25px;
            display: flex;
            flex-direction: column;
            justify-content: center;
            box-sizing: border-box;
        }

        .recipe-info-box h3 {
            font-family: 'Arial Narrow', sans-serif;
            font-size: 24px;
            font-weight: bold;
            color: #bc4f3b;
            margin: 0 0 8px 0;
            text-transform: uppercase;
        }

        .recipe-desc {
            font-family: 'Arial', sans-serif;
            font-size: 15px;
            color: #666666;
            line-height: 1.4;
            margin: 0 0 15px 0;
        }

        /* Contadores de pasos e ingredientes */
        .recipe-meta-data {
            display: flex;
            gap: 20px;
            font-family: 'Arial', sans-serif;
            font-size: 14px;
            color: #333333;
            margin-bottom: 15px;
        }

        .recipe-meta-data span b {
            color: #b6582c;
        }

        /* Etiquetas dinámicas estilo Nescafe */
        .recipe-badge {
            align-self: flex-start;
            font-family: 'Arial', sans-serif;
            font-size: 12px;
            font-weight: bold;
            padding: 6px 14px;
            border-radius: 4px;
            background: #ffeed6;
            color: #b6582c;
        }
        
        .recipe-badge.comunidad {
            background: #fde8e8;
            color: #c0392b;
        }

.recipe-card-link {
    text-decoration: none;
    color: inherit; /* Hereda los colores originales de los textos */
    display: flex; /* Antes: block. Con flex, este enlace también se estira igual que las demás tarjetas de la cuadrícula */
    height: 100%;
}

/* La tarjeta que va DENTRO del enlace <a> debe llenar todo el alto del enlace,
   igual que las tarjetas que no llevan enlace envolvente */
.recipe-card-link .recipe-card {
    width: 100%;
    height: 100%;
}

 /* ============================================================
           MODAL DEL TERMÓMETRO
        ============================================================ */
        .modal-termometro {display: none; position: fixed !important; z-index: 999999 !important; left: 0; top: 0; width: 100vw; height: 100vh; background-color: rgba(0, 0, 0, 0.85); backdrop-filter: blur(4px); justify-content: center; align-items: center; margin: 0 !important; transform: none !important;}
        .modal-termometro-content { position: relative; max-width: 90%; max-height: 85vh; transform: scale(0.75); opacity: 0; transition: transform 0.5s ease-out, opacity 0.5s ease-out; }
        .modal-termometro.show .modal-termometro-content { transform: scale(1); opacity: 1;}
        .modal-termometro-content img {max-width: 100%; max-height: 85vh; display: block; border-radius: 12px; background-color: #ffffff; padding: 15px; box-shadow: 0 15px 40px rgba(0, 0, 0, 0.6); box-sizing: border-box;}
        .close-termometro {position: absolute; top: -45px; right: 0; color: #ffffff; font-size: 40px; font-weight: bold; cursor: pointer; transition: color 0.2s ease;}
        .close-termometro:hover { color: #ff5252;}

        /* FLOATING WHATSAPP BUTTON */
        .whatsapp-float { position: fixed !important; bottom: 25px; right: 25px; width: 60px !important; height: 60px !important; max-width: 60px !important; background: #25D366; color: white; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 28px; text-decoration: none; box-shadow: 0 10px 25px rgba(0,0,0,0.25); z-index: 9999; transition: 0.3s; overflow: hidden; }
        .whatsapp-float:hover { transform: scale(1.1); }

        /* RESPONSIVO MÓVILES */
        @media (max-width: 768px) {
            body { padding-top: 110px; }
            .topbar { display: none; } /* Ocultamos la barra secundaria en móvil por espacio */

            /* Reajuste de la cabecera principal */
            .main-header { top: 0; height: 70px; padding: 0 20px; justify-content: space-between; box-sizing: border-box; }

            /* Botón de hamburguesa visible */
            .menu-toggle { display: block !important; background: none; border: none; font-size: 28px; color: #666666; cursor: pointer; }

            /* Menú desplegable vertical, oculto hasta que se activa */
            .menu { display: none; position: absolute; top: 70px; left: 0; width: 100%; background: #fffaf3; flex-direction: column; gap: 0; box-shadow: 0 8px 15px rgba(0,0,0,0.1); padding: 15px 0; }
            .menu.active { display: flex; }
            .menu a { width: 100%; padding: 12px 0; text-align: center; border-bottom: 1px solid rgba(0,0,0,0.05); box-sizing: border-box; font-size: 18px; }
            .menu a:last-child { border-bottom: none; }

            .recetario-section { padding: 40px 20px; }
            .recipes-grid { grid-template-columns: 1fr; gap: 25px; }
            .modal-termometro-content img { padding: 10px; }

            /* Botones de filtro: permitir que se acomoden en varias líneas */
            .recipe-filters {
                flex-wrap: wrap;
                gap: 10px;
            }
            .filter-btn {
                padding: 10px 18px;
                font-size: 15px;
                flex: 1 1 auto;
                text-align: center;
            }
        }

        /* Celulares angostos: reducir aún más y usar 2 columnas de botones */
        @media (max-width: 420px) {
            .recipe-filters {
                display: grid;
                grid-template-columns: 1fr 1fr;
                gap: 10px;
            }
            .filter-btn {
                padding: 10px 8px;
                font-size: 13px;
                white-space: normal;
                line-height: 1.2;
            }
        }
    .whatsapp-float img {
    width: 40px !important;
    height: 40px !important;
    max-width: 40px !important;
    max-height: 40px !important;
    display: block;
    object-fit: contain;
}
 
.pdf-btn {
    display: inline-flex; align-items: center; gap: 8px;
    background: #b6582c; color: white; text-decoration: none;
    padding: 12px 28px; border-radius: 40px;
    font-family: 'Arial Narrow', sans-serif; font-weight: bold; font-size: 16px;
    transition: all 0.3s ease;
}
.pdf-btn:hover { background: #bc4f3b; transform: translateY(-2px); }